package cn.itsource.org.domin;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.ArrayList;
import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Dept {
   private Long id; //主键
   private String  sn;//部门编号
   private  String name;//部门名称
   private String  dirPath;//层级路径
   private Integer state;//启用状态
   private Long  manager_id;//管理者id 关联员工表主键
   private Long parent_id;//父级部门的id 自关联
   private Long  shop_id;//店铺id 关联店铺表的id
   /*一个部门有一个部门经理*/
   private Emp manager;//查询表得到的username装入这个对象
   /*一个部门有一个直接上级部门*/
   private Dept parent;//查询表的带的parentName装入这个对象
   /* 封装子级部门的集合
     添加注解：  如果集合为空  没有子级部门  json中不包含这个children属性
     */
   @JsonInclude(JsonInclude.Include.NON_EMPTY)
   private List<Dept> children = new ArrayList<>();//子部门的列表
}
